/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package pe.com.cotelasa.scp.dominio.service;

import java.util.Collection;
import java.util.Date;
import pe.com.cotelasa.scp.dominio.common.ResultadoServicio;
import pe.com.cotelasa.scp.dominio.excepcion.ServiceException;
import pe.com.cotelasa.scp.entidad.FacturaProforma;

/**
 *
 * @author usuario
 */
public interface IServicioFacturaProforma {
    
    public Collection<FacturaProforma> listarFacturaProformasActivos() throws ServiceException;

    public FacturaProforma conseguirFacturaProformaPorId(Integer idFacturaProforma) throws ServiceException;

    public ResultadoServicio guardarFacturaProforma(FacturaProforma facturaProforma) throws ServiceException;

    public ResultadoServicio actualizarFacturaProforma(FacturaProforma facturaProforma) throws ServiceException;

    public Collection<FacturaProforma> listarFacturaProformasPorFiltro(FacturaProforma facturaProforma) throws ServiceException;
    
    public Collection<FacturaProforma> buscarFacturaProformasPorFiltro(FacturaProforma facturaProforma,Date fechaInicio,Date fechaFin) throws ServiceException;
    
    public FacturaProforma conseguirFacturaProformaPorCodigo(FacturaProforma facturaProforma) throws ServiceException;
    
    public FacturaProforma obtenerFPPorCodigo(String codigoFacturaProforma) throws ServiceException;
    
    public Collection<FacturaProforma> listarFacturaProformasAprobadosPorTipo(FacturaProforma facturaProforma) throws ServiceException;
    
    
}
